#include <QFile>
#include <QDebug>

int main(int argc, char *argv[])
{
    //指定要写入文件的数据
    qint32 nums[5] = {1,2,3,4,5};
    //写入文件之前，要将数据以二进制方式存储到字节数组中
    QByteArray byteArr;
    byteArr.resize(sizeof(nums));
    for (int i = 0; i < 5; ++i)
    {
        //借助指针，将每个整数拷贝到字节数组中
        memcpy(byteArr.data()+i*sizeof(qint32), &nums[i], sizeof(qint32));
    }
    //将byteArr字节数组存储到文件中
    QFile file("./temp.txt");
    file.open(QIODevice::WriteOnly);
    file.write(byteArr);
    file.close();
    //再次打开文件，读取文件中存储的二进制数据
    file.open(QIODevice::ReadOnly);
    QByteArray resArr = file.readAll();
    //输出读取到的二进制数据
    qDebug() << "resArr: " << resArr;
    //将二进制数据转化为整数
    char *data = resArr.data();
    while (*data)
    {
        qDebug() << *(qint32*)data;
        data += sizeof(qint32);
    }

    return 0;
}
